Method and apparatus for reduced data block transmission in an automatic repeat request system

ABSTRACT

A wireless transceiver apparatus ( 201, 203 ) and a method of operation in an Automatic Repeat Request (ARQ) mode is disclosed. On the transmitter side a packet of data ( 113 ) is fragmented into a series of sequential data blocks and each data block is assigned a block sequence number ( 601 ). At least a first data block of the series of sequential data blocks is sent to the receiver ( 603 ), and also a first block sequence number corresponding to the first data block. An acknowledgment timer is set ( 605 ) specifying a time interval in which to receive an acknowledgment message from the remote transceiver. If the acknowledgment timer has timed out, the transmitter side sends a discard message ( 607 ) to the receiver specifying at least a second block sequence number corresponding to at least a second data block, and specifying that said second data block is to be discarded.

FIELD OF THE DISCLOSURE

The present invention relates generally to packet based wirelesscommunications systems employing automatic repeat request (ARQ)mechanisms and more particularly to a method and apparatus for reducingdata block transmissions in such wireless packet based communicationssystems.

BACKGROUND

Automatic repeat request (ARQ) mechanisms make use of retransmission inpacket based wireless communications systems, as well as othercommunications systems, to increase the probability that data has beentransferred from a transmitter to a receiver. Retransmission of datahowever may reduce a system's net data throughput which may be ofparticular significance for various wireless communications systems.

In wireless communications systems based on the IEEE 802.16 standard,various timers are defined with respect to the ARQ mechanism.Specifically, a block lifetime timer is assigned to each ARQ block suchthat the blocks are discarded at the expiry of the timer. However, ingeneral any ARQ block will only be a fraction of a Medium Access ControlLayer (MAC) Service Data Unit (MSDU). Therefore if a fraction of an MSDUis discarded due to timer expiry, the entire MSDU becomes obsolete, andit is futile and also wasteful of bandwidth, to transmit and/orretransmit any remaining ARQ blocks associated with the same MSDU.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a data packet structure.

FIG. 2 is a block diagram of a wireless network employing automaticrepeat request (ARQ).

FIG. 3 is a block diagram of a wireless mobile station in accordancewith the various embodiments.

FIG. 4 is a diagram illustrating a high-level architecture of a mobilestation and a base station in accordance with the various embodiments.

FIG. 5 is a flow chart illustrating high level operation of a receiverin accordance with various embodiments.

FIG. 6 is a flow chart illustrating high level operation of atransmitter in accordance with various embodiments.

FIG. 7 is a flow chart illustrating relevant segments of a transmitterstate wherein the transmitter is operating in accordance with anembodiment.

FIG. 8 is a flow chart illustrating relevant segments of a receiverstate wherein the receiver is operating in accordance with anembodiment.

FIG. 9 is a message flow diagram illustrating an exemplary message flowof a transmitter and receiver in accordance with an embodiment.

FIG. 10 is a block diagram illustrating operation of a sliding receiverwindow.

FIG. 11 is a block diagram illustrating operation of a sliding receiverwindow in accordance with an embodiment.

DETAILED DESCRIPTION

Methods and apparatuses for reducing data block transmission in systemsemploying Automatic Repeat Request (ARQ) are provided herein.

In a first aspect of the various embodiments, a method of operating awireless transceiver in an Automatic Repeat Request (ARQ) mode comprisesfragmenting a packet of data into a series of sequential data blocks andassigning each of the data blocks a block sequence number; sending atleast a first data block from the series of sequential data blocks, anda first block sequence number corresponding to the first data block, toa remote wireless transceiver; setting an acknowledgment timerspecifying a time interval in which to receive an acknowledgment messagefrom the remote transceiver, the acknowledgment message corresponding tothe first data block; determining that the acknowledgment timer hastimed out; and sending a discard message to the remote transceiverspecifying at least a second block sequence number corresponding to atleast a second data block, and specifying that the second data block isto be discarded.

A second aspect of the various embodiments is a method of operating awireless transceiver in an ARQ mode comprising receiving from a remotetransceiver at least a first data block including a first block sequencenumber, the first data block being from a series of sequential datablocks forming a packet; receiving from the remote transceiver a discardmessage specifying at least a second block sequence number correspondingto at least a second data block, where the discard message specifiesthat the second data block is to be discarded; and discarding the seconddata block.

A third aspect is a wireless communication station comprising atransceiver; a processor coupled to the transceiver which has a mediumaccess control layer, and configured to fragment a packet of data into aseries of sequential data blocks and assign each of the data blocks ablock sequence number; send at least a first data block from the seriesof sequential data blocks, and a first block sequence numbercorresponding to the first data block, to a remote wireless transceiver;set an acknowledgment timer specifying a time interval in which toreceive an acknowledgment message of the first data block from theremote transceiver; determine that the acknowledgment timer has timedout; and send a discard message to the remote transceiver specifying atleast a second block sequence number corresponding to at least a seconddata block, and specifying that the second data block is to bediscarded.

Turning now to the drawings wherein like numerals represent likecomponents, FIG. 1 illustrates the structure of a signal burst 103 froma transmitter to a receiver 101 over an air interface 105. The signalburst 103 will generally comprise at least one packet of data having thestructure of a Medium Access Control (MAC) header 107, varioussub-headers 109, further fragmentation or packing sub-headers 111, adata portion 113, and in some embodiments, a cyclic redundancy checkportion 115.

The data 113 may contain a data packet structured by a Medium AccessControl Layer (MAC) wherein the data packet may be referred to in someembodiments as a Service Data Unit (SDU), or more specifically a MAC SDU(MSDU). Additionally, such MSDUs may be partitioned or “fragmented” toproduce packet fragments, or smaller data blocks. Groups of such MSDUfragments or MSDU data blocks are subsequently transmitted in “ProtocolData Units” (PDUs). Therefore, the payload may be a complete MSDU, or inthe case of large MSDUs, may be one of more fragments of an MSDU, whichare contained in a PDU. Such fragmentation operation is dictated byQuality of Service (QoS) requirements and by the efficient use ofbandwidth as understood by those of ordinary skill.

The data 113 may also be “packed” data, that is, the MAC layer of thetransmitter may discretionally pack several MSDUs into one PDU.Additionally, the transmitter MAC layer may pack various MSDU fragmentsinto a single PDU. For ARQ systems, the packing and/or fragmentationsub-headers 111 will contain a Block Sequence Number (BSN) which the ARQsystem uses to identify missing or otherwise lost fragments so that thefragments may be retransmitted.

Generally, when packing is employed, the packing sub-header 111 willalso contain fragmentation information for the MSDU or fragment thereofcontained within data 113. However, if packing is not used, thensub-headers 111 will be a fragmentation sub-header and contain thefragmentation information for the corresponding fragment. Therefore, theconfiguration of the signal 103 payload may be a sequence of sub-headers111 and corresponding data 113 portions wherein the fragmentationsubheader or each packing sub-header contains a BSN and/or fragmentationinformation for the specific fragment.

Further, the signal 103 payload may contain one or more initial PDUtransmissions combined with one or more PDU retransmissions. The BSN ofa fragment may be an 11-bit field in some embodiments in which 802.16 isemployed. Fragmentation information may be a 2-bit field and indicatewhether a fragment is a “First Fragment,” “Continuing Fragment,” “LastFragment,” or “Unfragmented” by the binary values “10,” “11,” “01,” and“00” respectively.

Lastly, data 113 may also contain an ARQ feedback message, which may bein combination with other PDU data as discussed above. For example, anARQ feedback message may be “piggybacked” with other data by using apacking subheader. However, an ARQ feedback message may also be sent asa stand alone MAC management message without a subheader. The data 113may also employ encryption in some embodiments.

Signal 103 may include a Cyclic Redundancy Check (CRC) field 115 in someembodiments which may cover the MAC header 107 as well as data 113.Further, in some embodiments the MAC header 107 will contain a CRC-8header checksum and CRC field 115 may contain a CRC-32 checksum to coverthe data. If encryption is used as mentioned above, the CRC field willbe determined subsequent to encryption operations. Signal 103 may alsoinclude padding (not shown).

In ARQ systems, an MSDU may be logically segmented into a series of datablocks and subsequently encapsulated into PDUs as discussed brieflyabove. The BSN, which is contained in the fragmentation or packingsub-headers 111 likewise as discussed above, will correspond to thefirst data block of the series of data blocks after the sub-header 111,which are being transmitted together. For retransmission, thetransmitter may make a policy decision as to whether retransmitted datablocks are arranged in the same PDUs.

FIG. 2 illustrates a communications network 200, with various basestations 203, each base station 203 having a corresponding radiocoverage area 207. In general, base station radio coverage areas mayoverlap and, in general, form an overall network coverage area. Acoverage area may comprise a number of base station coverage areas 207,which may form a contiguous radio coverage area. However, it is notrequired to have contiguous coverage and therefore the coverage area mayalternatively be distributed throughout an overall network coveragearea. Furthermore, each base station 203 may communicate with a numberof mobile stations such as mobile station 201, via an air interface 205.The mobile station 201 may communicate with various base stations viahandover operations as the mobile station 201 moves throughout thenetwork 200 radio coverage areas.

A number of base stations 203 may be connected to a base stationcontroller 209 via backhaul connections 211. The overall network maycomprise any number of base station controllers, each controlling anumber of base stations. Note that the base station controller 209 mayalternatively be implemented as a distributed function among the basestations. The base stations 203 may communicate with the mobile station201 via any number of standard air interfaces such as, but not limitedto, UMTS, E-UMTS, CDMA2000, 802.11 or 802.16.

The base stations 203 may perform a number of control functions such as,but not limited to, a Radio Link Control (RLC) function and MediumAccess Control (MAC) function. Base station controller 209 may provide acentralized Radio Resource Management (RRM) function to synchronizevarious functions between the base stations 203 such as, but not limitedto, scheduling and segmentation and reassembly functions as well as tocoordinate the RLC and MAC functions between the various base stations203.

FIG. 3 is a block diagram illustrating the primary components of amobile station in accordance with some embodiments. Mobile station 300comprises user interfaces 301, at least one processor 303, and at leastone memory 305. Memory 305 has storage sufficient for the mobile stationoperating system 307, applications 309 and general file storage 311.Mobile station 300 user interfaces 301, may be a combination of userinterfaces including but not limited to a keypad, touch screen, voiceactivated command input, and gyroscopic cursor controls. Mobile station300 has a graphical display 313, which may also have a dedicatedprocessor and/or memory, drivers etc. which are not shown in FIG. 3.

It is to be understood that FIG. 3 is for illustrative purposes only andis for illustrating the main components of a mobile station inaccordance with the present disclosure, and is not intended to be acomplete schematic diagram of the various components and connectionsthere-between required for a mobile station. Therefore, a mobile stationmay comprise various other components not shown in FIG. 3 and still bewithin the scope of the present disclosure.

Returning to FIG. 3, the mobile station 300 may also comprise a numberof transceivers such as transceivers 315 and 317. Transceivers 315 and317 may be for communicating with various wireless networks usingvarious standards such as, but not limited to, UMTS, E-UMTS, CDMA2000,802.11, 802.16, etc.

Memory 305 is for illustrative purposes only and may be configured in avariety of ways and still remain within the scope of the variousembodiments herein disclosed. For example, memory 305 may be comprisedof several elements each coupled to the processor 303. Further, separateprocessors and memory elements may be dedicated to specific tasks suchas rendering graphical images upon a graphical display. In any case, thememory 305 will have at least the functions of providing storage for anoperating system 307, applications 309 and general file storage 311 formobile station 300. In some embodiments, applications 309 may comprise asoftware stack having a Medium Access Control (MAC) layer thatcommunicates with a stack MAC layer in a base station or base stationcontroller.

Turning now to FIG. 4, mobile station and base station architectures inaccordance with the various embodiments are illustrated. Mobile stations401 comprises a stack having a Radio Link Controller (RLC) 407, a MediumAccess Controller (MAC) 409, and a Physical Layer (PHY) 411. Basestation 403 similarly has an RLC 413, MAC 415 and PHY 417.

FIG. 5 illustrates high level operation of a receiver, operating in anARQ mode, in accordance with various embodiments. Initial operationbegins with notification or a determination that an ARQ data block orblocks has/have been discarded 501. Next, as shown in block 503, thereceiver determines whether the discarded ARQ block or blocks belongs toan MSDU for which other ARQ blocks have already been received. If so,then all ARQ data blocks corresponding to the failed MSDU are discardedas shown in block 505.

A high level transmitter operation in accordance with variousembodiments is illustrated by FIG. 6. In step 601, the transmitter mayfragment data packets into a series of data blocks and assign BlockSequence Numbers (BSNs) and/or fragmentation control information. One ormore of the data blocks is then sent to a receiver as shown in step 603.

The transmitter will set one or more acknowledgement timers, as shown instep 605, and wait for an ACK or NACK message from the receiver. Thisstep may include a number of retransmit attempts based on one or more ofthe step 605 timers timing out. However, after final timeout, the MSDUcan be considered to have failed. Therefore, in step 607, thetransmitter will send a discard message to the receiver indicating thatother ARQ data blocks that are part of the same MSDU should bediscarded.

Segments of the transmitter state machine useful for understanding thevarious embodiments in a transmitting equipment are illustrated by FIG.7. However, it is to be understood that FIG. 7 is not intended to be afull and complete description of the transmitter state machine, butrather is intended to provide those details necessary for understandingthe various embodiments. Therefore, a transmitter state machine maycomprise various other steps or procedures not shown by FIG. 7, and suchtransmitters employing the procedures illustrated by FIG. 7 with othersuch steps or procedures not shown, remain in accordance with thevarious embodiments herein disclosed.

Therefore, in step 701 the transmitter may segment an MSDU into a numberof data blocks and include fragmentation control information inappropriate sub-headers, such as fragmentation or packing sub-headers111 shown in FIG. 1 and discussed previously. One or more data blocksmay then be sent by the transmitter as shown in step 703. It is to beunderstood that step 703 may also represent a retransmission of the ARQmode such that a signal payload may comprise a number of initial datablock transmissions and also retransmissions as was discussed previouslywith respect to FIG. 1.

In general as shown in step 705, the transmitter waits for the datablock or blocks to be acknowledged by the receiver by an ACK message. Ifthe data block is acknowledged then the block state will be updated. Forexample, a data block may be in one of four states; “not-sent,”“outstanding,” “discarded,” and “waiting-for-retransmission.” Therefore,a data block initial state is “not-sent.”

After the block is sent it becomes “outstanding” until an ACK isreceived in 705, or a “not-acknowledged” (NACK) is received as in 707,or if ACK timeout occurs as in 709. Upon receipt of an ACK message in705, the block state will be updated to “discarded” by the transmitter.In this case, the block state may be updated to “discarded” in 711,after which a pointer may be moved to the next Block Sequence Number(BSN) or numbers as in 713, and the next data block or set of blocks maybe sent in 703.

However, if a NACK is received as in 707, or if ACK timeout occurs as in709, then the block state will be changed to “waiting forretransmission” in 715 and the block will be resent in 703.

Upon the initial sending of the data block in 703, a data block lifetimetimer is also set, and the timeout is pending as shown in step 717. Ifthe data block lifetime timer times out in 717, a discard message issent to the receiver in 719. The discard message may in some embodimentsprovide an indication to the receiver of every related data block, thatis, an indication of every data block BSN pertaining to the same MSDUfor which the discarded block occurred. It is to be understood thatvarious implementations are possible for indicating the related datablocks and that such implementations remain in accordance with thevarious embodiments disclosed herein. Thus, in one exemplaryimplementation of the various embodiments, the discard message mayspecify a range of BSNs which are to be discarded, by providing aninitial BSN and a final BSN. Further, in some embodiments the receivingside may infer whether certain data blocks belong to a discarded MSDUand therefore in such embodiments only a single BSN may be provided, forexample an initial BSN or a final BSN. In other alternative embodiments,the discard message may provide an initial BSN for a new MSDU so thatthe receiving side may advance its receive window accordingly, inaddition to deleting data blocks with BSNs corresponding to the failedMSDU.

Returning now to FIG. 7, the transmitter then waits for an ACK or NACKmessage in 721. The timer sequence for 721 may be identical to thesequence of 705, 707 and 709 in some embodiments, such that 721 willhave the same time duration as 705, 707 and 709. Returning to 721, if aNACK is received, or if a timeout occurs, then the discard message willbe resent in 719. Otherwise, after an ACK is received in 721, thetransmitter will discard the data blocks in 723 and will advance atransmission (Tx) window to the next BSN to be sent.

FIG. 8 illustrates the operation of a receiver state machine inaccordance with the embodiments, and generally corresponding to thetransmitter state machine illustrated by FIG. 7. Similar to the intentand understanding of FIG. 7, it is to be understood that FIG. 8 is notintended to be a full and complete description of the receiver statemachine, but rather is intended to provide those details necessary forunderstanding the various embodiments. Therefore, a receiver statemachine may comprise various other steps or procedures not shown by FIG.8, and such receivers employing the procedures illustrated by FIG. 8with other such steps or procedures not shown, remain in accordance withthe various embodiments herein disclosed. Also, with respect to bothFIGS. 7 and 8, it is to be understood that the various embodiments willbe a transceiver station, that is, a base station or a mobile stationhaving both transmitting and receiving capability and therefore bothbase stations and mobile stations may employ the various inventivemethods and techniques herein disclosed in both the transmission andreception aspects.

Returning now to FIG. 8, a receiver receives a data block or data blocksin 801. For embodiments employing a Cyclic Redundancy Check (CRC) as wasdiscussed with respect to FIG. 1, the CRC will be performed as in 803and if the data passes, it will be unpacked or defragmented as needed in805. The BSNs will then be checked in 807 to determine whether thereceived data block or data blocks is/are within the expected window asin 809. If not, then the blocks will be discarded in 811.

If the data block was in fact within the appropriate BSN window then thedata block may be stored in 813, and the receive (Rx) window may beadvanced to the next expected BSN if the received data block BSN isequal to the current Rx window start pointer value. The receiver willthen send an ACK message to the transmitter in 815. During the normaloperation of the receiver in ARQ mode, various blocks will be receivedsuch that the process of 801 through 815 will repeat until thesuccessful reception of one or more MSDUs or unless, a discard messageis received as in 817. If a discard message is not received in 817, thereceiver will continue to receive data blocks in 801 that are expectedwithin the Rx window. However, if a discard message is received as in817, the receiver will determine whether currently stored data blocksbelong to the same MSDU as blocks specified by the discard message.

As discussed above with respect to the transmitter states illustrated byFIG. 7, the discard message may contain various indications to informthe receiver of which blocks are to be discarded. Therefore, forexample, only the first and last BSNs of the discardable data blocks maybe specified. Alternatively, the next BSN to which the receiver shouldadvance the Rx window may be specified. In any case, for someembodiments, the receiver may check the fragmentation information forstored blocks as shown in 819. The fragmentation information may be usedby the receiver to infer which stored blocks belong to the discardedMSDU, even if the transmitter discard message did not provideinformation specific for all MSDU blocks. For example, if a first blockBSN was specified, then any blocks having “Continuing Fragment” or “LastFragment” binary indications belonging to the same MSDU may be discardedprior to advancing the Rx window. For any of the above describedembodiments, the receiver determines which additional data blocks if anymust be discarded as shown in 821.

Therefore in 823, all data blocks related to the same MSDU for which anydata block was to be discarded, as specified by the transmitter discardmessage, or as inferred by the receiver, may likewise be discarded. Thereceiver will then, in 825, update the block state to “received,” eventhough the blocks have in fact not been received, and send an ACKmessage to the transmitter in 827. The ACK message will inform thetransmitter that the blocks were discarded. In 829, the receiver willadvance its Rx window to the next BSN.

FIG. 9 is a message flow diagram providing an example of message flowsbetween a transmitter and receiver in accordance with variousembodiments. In FIG. 9, the base station 903 is assumed to betransmitting data blocks, while the mobile station (MS) 901 is assumedto be receiving data blocks. However, it is to be understood that in thevarious embodiments, communication of data is bi-directional such thatthe mobile station 901 may transmit data blocks, while the base station903 may receive data blocks.

Therefore in accordance with the exemplary FIG. 9 assumption of basestation 903 data transmission, an ARQ data block is sent to the MS 901from base station 903 as signal 905. The base station will then set thetimer “ARQ_BLOCK_LIFETIME TIMER” 907 and also set an “ARQ_RETRY_TIMEOUTTIMER” 909. On the receiver side, the MS 901 will set an“ARQ_RX_PURGE_TIMEOUT TIMER” 911.

Returning to the base station 903 side, and assuming that an ACK is notreceived, the timer 909 will timeout and the base station 903 willresend the data block 913. The resend 913 may also occur if a NACKmessage is received as was discussed above. In FIG. 9, it is assumedthat an ACK message, or a NACK message, is never received by the basestation 903 such that ARQ_BLOCK_LIFETIME TIMER 915 times out, in whichcase discard message 917 is sent to the MS 901.

The MS 901 will discard any specified ARQ blocks in 921, and may alsoinfer other blocks not specified, if such blocks may be related to thesame MSDU by using for example, the block fragmentation controlinformation as was discussed above. The MS 901 will then advance theARQ_RX_WINDOW_START 923 to the next BSN, and will send an ARQ feedbackmessage 925 to the base station 903 indicating that the ARQ blocks havebeen discarded. The base station 903 likewise discards any ARQ blocksqueued for the MSDU in 919.

FIG. 10 illustrates how an ARQ sliding receiver window operates and FIG.11 illustrates how the ARQ window operates in accordance with anembodiment. Therefore, in FIG. 10, when fragmentation is used on an ARQconnection, only a part of the ARQ blocks for a specific MSDU might bediscarded because the MSDU may have been fragmented over several PDUs.As discussed in detail above, ARQ blocks may be discarded for variousreasons, one of which is that, after multiple retries theARQ_RX_PURGE_TIMEOUT TIMER 911 for example, may timeout on the receiveside, or a discard message 917 may have been received when thetransmitter ARQ_BLOCK_LIFETIME TIMER 915 timeout occurs, for example.

Therefore, in FIG. 10, in which various ARQ data blocks are representedas consecutive data blocks having BSNs 1 through 12, data blocks 1, 2and 3 correspond to a first MSDU, while data blocks 4 through 8correspond to a second MSDU. Block 5 has been received, while block 4has not been received. If a discard message is received specifying datablock 4 is to be discarded, the receiver will advance the window 1001 toBSN 6 as shown by window 1003. It is to be noted that data blocks 6, 7and 8 also belong to the second MSDU, are still within the pendingwindow 1003, and have not been discarded, even though theses blocks areno longer of any use.

Therefore, the various embodiments employ the technique illustrated byFIG. 11. Therefore as shown in FIG. 11, the receiver may utilize thefragmentation control (FC) information to deduct related ARQ blocks notyet received, because an FC indication of “First Fragment,” must beended by an FC set to “Last Fragment.” Before the receiver sends an ARQfeedback message, the receiver may examine if any other ARQ blocks wouldcomplete the MSDU and thereby shift the receive window 1101 beyond theseadditional blocks as well.

It is assumed in FIG. 11 that either a receiver ARQ_RX_PURGE_TIMERtimeout occurred for ARQ block 5, or that a discard message was receivedfor ARQ block 4. The receiver may read the FC information of receivedblocks 5 and 7 determining that 5 and 7 are “Continuing Fragments” whichcan be discarded. The receiver may further note that 6 and 8, which havenot been received, are a “Continuing Fragment” and a “Last Fragment,”respectively. Block 8 is logically inferred to be the “Last Fragment” ofthe discarded MSDU because received block 9 is a “First Fragment” of anew MSDU. Likewise, the receiver may determine that blocks 9, 10 and 11are the “First Fragment,” and “Continuing Fragments” of a second MSDUand therefore the window may be advanced to window position 1103 whichcorresponds to BSN 12.

If the receiver is unable to deduct all information needed to discard acomplete MSDU, one such case being where consecutive data blocks havenot been received, then on reception of new information concerning thisMSDU, the receiver may continue to discard the remaining MSDU datablocks. In the event of consecutive data blocks which are not received,and which are part of a discarded MSDU, the receiver will, in thevarious embodiments, set a discard flag. For example, assuming adiscarded MSDU consists of data blocks 4 through 9 wherein all blockshave been received, except for blocks 6 and 7. In this case the receiverwould forward the window to BSN 6 because it cannot determine whetherblocks 6 and 7 are “Continuing Fragments,” or whether block 6 is a “LastFragment” and block 7 is a “First Fragment” of a new MSDU. Therefore thereceiver in this case can only safely discard up through “ContinuingFragment” block 5. However, when the receiver receives block 6 having FCinformation set to “Continuing Fragment,” it will discard blocks 6through 9, and advance the window to BSN 10. Because block 8, which is a“Continuing Fragment,” and block 9, which is a “Last Fragment,” havebeen received, and because block 6, subsequently received is then knownto be continuing, block 7 logically must likewise be continuing and maybe discarded. Thus, the receiver appropriately discards blocks 6 though9 and advances the receive window to BSN 10.

Additionally, it is to be understood that the transmitter side may alsoemploy the techniques described above and illustrated by FIG. 11, in theevent of for example an ARQ_BLOCK_LIFETIME TIMER 915 timeout, such thatthe blocks marked “not received' would be “not acknowledged' withrespect to the transmitter side. The transmitter may thus accordinglyadvance the transmission window thereby saving unnecessary data blocktransmissions or retransmissions.

Returning briefly to FIG. 9, further optimizations may be employed bythe various embodiments. For example, ARQ_RX_PURGE_TIMEOUT TIMER 911 maybe applied to several data blocks simultaneously, if a set of datablocks having consecutive BSNs is received in a single PDU. Otherwise ifthe timer 911 is set for each individual data block, the timer for thatblock must be reset if a duplicate data block were received. Therefore,in the various embodiments, only a single purge timer is set forconsecutive BSN data blocks received in a single PDU. The timer is thenonly reset in the event that duplicates of all BSNs within the PDU sethave been received. Similarly on the transmitter side, theARQ_BLOCK_LIFETIME_TIMER 907 may be applied to all ARQ data blocks thatare sent in the same PDU.

While various embodiments have been illustrated and described, it is tobe understood that the invention is not so limited. Numerousmodifications, changes, variations, substitutions and equivalents willoccur to those skilled in the art without departing from the spirit andscope of the present invention as defined by the appended claims.

1. A method of operating a wireless transceiver, said wirelesstransceiver operating in an Automatic Repeat Request (ARQ) mode, saidmethod comprising: fragmenting a packet of data into a series ofsequential data blocks and assigning each of said data blocks a blocksequence number; sending at least a first data block from said series ofsequential data blocks, and a first block sequence number correspondingto said first data block, to a remote wireless transceiver; setting anacknowledgment timer specifying a time interval in which to receive anacknowledgment message from said remote transceiver, said acknowledgmentmessage corresponding to said first data block; determining that saidacknowledgment timer has timed out; and sending a discard message tosaid remote transceiver specifying at least a second block sequencenumber corresponding to at least a second data block, and specifyingthat said second data block is to be discarded, wherein the at least asecond block sequence number corresponds to one or more remaining datablocks forming said packet of data.
 2. The method of claim 1, furthercomprising: discarding all remaining data blocks of said series ofsequential data blocks.
 3. The method of claim 2, further comprising:advancing an ARQ transmission window start to the next block sequencenumber greater than a largest value block sequence number, said largestvalue block sequence number corresponding to a last in sequence datablock of said series of sequential data blocks.
 4. The method of claim1, further comprising: receiving from said remote transceiver, anacknowledgment message, said acknowledgment message specifying that saidsecond data block has been discarded by said remote transceiver.
 5. Themethod of claim 1, further comprising: setting a retry timer specifyinga time interval in which to receive a report message from said remotetransceiver, said report message acknowledging receipt of said discardmessage; determining that said retry timer has timed out; and sending asecond discard message to said remote transceiver.
 6. A method ofoperating a wireless transceiver, said wireless transceiver operating inan Automatic Repeat Request (ARQ) mode, said method comprising:receiving from a remote transceiver at least a first data blockincluding a first block sequence number, said first data block beingfrom a series of sequential data blocks forming a packet; receiving fromsaid remote transceiver a discard message specifying at least a secondblock sequence number corresponding to at least a second data block,said discard message specifying that said second data block is to bediscarded, wherein the at least a second block sequence numbercorresponds to one or more remaining data blocks forming said packet;and discarding said second data block.
 7. The method of claim 6, furthercomprising: sending a discard report message to said remote transceiverreporting that said second data block has been discarded.
 8. The methodof claim 7, further comprising: advancing an ARQ receive window start tothe next block sequence number greater than a largest value blocksequence number, said largest value block sequence number correspondingto a last in sequence data block of said series of sequential datablocks.
 9. The method of claim 6, further comprising: receiving fromsaid remote transceiver, a fragmentation information corresponding tosaid first data block; setting a data purge timer specifying a timeinterval in which to receive at least a second data block from saidseries of sequential data blocks; determining that said purge timer hastimed out; using said fragmentation information to determine a finalblock sequence number corresponding to a last in sequence data block ofsaid series of sequential data blocks; and advancing an ARQ receivewindow start to the next block sequence number greater than said finalblock sequence number.
 10. A wireless communication station comprising:a transceiver for transmitting and receiving radio signals; a processorcoupled to said transceiver, said processor having a medium accesscontrol layer, and configured to: fragment a packet of data into aseries of sequential data blocks and assign each of said data blocks ablock sequence number; send at least a first data block from said seriesof sequential data blocks, and a first block sequence numbercorresponding to said first data block, to a remote wirelesstransceiver; set an acknowledgment timer specifying a time interval inwhich to receive an acknowledgment message from said remote transceiver,said acknowledgment message corresponding to said first data block;determine that said acknowledgment timer has timed out; and send adiscard message to said remote transceiver specifying at least a secondblock sequence number corresponding to at least a second data block, andspecifying that said second data block is to be discarded, wherein theat least a second block sequence number corresponds to one or moreremaining data blocks forming said packet of data.
 11. The wirelesscommunication station of claim 10, wherein said processor is furtherconfigured to discard all remaining data blocks of said series ofsequential data blocks.
 12. The wireless communication station of claim10, wherein said processor is further configured to advance an ARQtransmission window start to the next block sequence number greater thana largest value block sequence number, said largest value block sequencenumber corresponding to a last in sequence data block of said series ofsequential data blocks.
 13. The wireless communication station of claim10, wherein said processor is further configured to receive from saidremote wireless transceiver, an acknowledgment message, saidacknowledgment message specifying that said second data block has beendiscarded by said remote wireless transceiver.
 14. The wirelesscommunication station of claim 10, wherein said processor is furtherconfigured to: receive from said remote transceiver at least a firstdata block including a first block sequence number, said first datablock being from a series of sequential data blocks forming a packet;receive from said remote transceiver a discard message specifying atleast a second block sequence number corresponding to at least a seconddata block, said discard message specifying that said second data blockis to be discarded; and discard said second data block.
 15. The wirelesscommunication station of claim 14, wherein said processor is furtherconfigured to send a discard report message to said remote transceiverreporting that said second data block has been discarded.
 16. Thewireless communication station of claim 14, wherein said processor isfurther configured to advance an ARQ receive window start to the nextblock sequence number greater than a largest value block sequencenumber, said largest value block sequence number corresponding to a lastin sequence data block of said series of sequential data blocks.
 17. Thewireless communication station of claim 14, wherein said processor isfurther configured to: receive from said remote transceiver, afragmentation information corresponding to said first data block; set adata purge timer specifying a time interval in which to receive at leasta second data block from said series of sequential data blocks;determine that said purge timer has timed out; use said fragmentationinformation to determine a final block sequence number corresponding toa last in sequence data block of said series of sequential data blocks;and advance an ARQ receive window start to the next block sequencenumber greater than said final block sequence number.
 18. The wirelesscommunication station of claim 10, wherein said transceiver fortransmitting and receiving radio signal, transmits and receives radiosignals in accordance with an orthogonal frequency division multipleaccess radio interface.
 19. The wireless communication station of claim10, wherein said packet of data is a Medium Access Control Layer ServiceData Unit (MSDU).
 20. The wireless communication station of claim 10,wherein said first block sequence number corresponding to said firstdata block, further includes a fragmentation control information.